Mobile telephony devices utilizing wireless communication protocols are ubiquitous. Many of these devices utilize one of the competing circuit switched cellular networks (e.g., GSM or CDMA) to place and receive telephone calls to other telephony endpoint devices. A telephony endpoint device may include another mobile telephony device on the same or another cellular network, a Voice-over-IP (VoIP) telephony device, and/or a plain old telephone service (POTS) telephony device. A VoIP telephony device may be operable over an Ethernet (wired) connection, an 802.11 (wireless) connection, or one of the many cellular IP data connections now available. Each of these telephony endpoint devices may use a different access network but all are interfaced at some point to allow for communication among the different networks.
Recently, there has been introduced another type of mobile telephony device, one that is capable of utilizing multiple different networks depending on the current location or network conditions pertaining to the mobile telephony device. Such a mobile telephony device may be characterized as a hybrid mobile device due to its capability of making and receiving telephone calls on at least two distinct networks. Some hybrid mobile devices include the ability to start or establish a telephone call on one network (e.g., an IP based VoIP network over a wireless fidelity (WiFi) connection) and handoff the call to a second network (e.g., a circuit switched cellular network) when conditions on the original network degrade. Moreover, the VoIP network may run over a cellular IP data connection. Such a handoff may occur, for instance, when the hybrid mobile device moves out of range of the IP based WiFi access point. Rather than dropping the call, the hybrid mobile device, in conjunction with a network based communications server, may switch to a cellular connection prior to severing the WiFi VoIP connection thereby ensuring that the hybrid mobile device stays connected to the other telephony endpoint and the call is not dropped.
In addition to a full handoff, a hybrid mobile device may also utilize multiple concurrent IP data streams traversing multiple different networks to manage handoffs dynamically in a different manner. For example, a hybrid mobile device may send the same IP data stream to a network based communications server over multiple different networks simultaneously. The network based communications server may then receive and re-format the IP data stream using packets from one or more of the received IP data streams according to a particular policy. This process also works in the reverse direction. The communications server may send the same IP data stream to the hybrid mobile device over multiple different networks simultaneously. The hybrid mobile device may then receive and re-format the IP data stream using packets from one or more of the received IP data streams according to a particular policy.
Determining when to initiate or otherwise manage handoff to avoid dropping a call can vary based on a number of factors, including but not limited to network conditions, signal strength, location and the like. As such, described herein are methods, systems, and techniques for managing multiple concurrent IP data streams between a hybrid mobile device and a network based communications server traversing different networks.